package com.tsd.core.annotation;


import com.tsd.core.utils.LockUtil;

import java.lang.annotation.*;

/**
 * @ClassName: GenSnQue
 * @Description: 生成序号队列
 * @Author: Hillpool
 * @Date: 2023/9/07 14:13
 * @Version: 1.0
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface GenSnQue {

    /**
     * 等待锁时间，默认是30秒
     *
     * @return
     */
    long waitingTimeSeconds() default LockUtil.LOCK_WAITING_TIME_SECONDS;

    /**
     * 编码规则编码
     *
     * @return
     */
    String ruleCode();

    /**
     * 客户字段名称
     *
     * @return
     */
    String clientFieldName();

    /**
     * 供货商字段名称
     *
     * @return
     */
    String supplierFieldName();
}
